Event location determination

ABSTRACT

A method of determining a location of an event of interest by processing signals from a satellite positioning system. The method comprises receiving recorded blocks of data samples of a satellite broadcast including blocks recorded at the approximate location of the event of interest, each block including one or more timestamps generated within a first portable device at which the samples were recorded; receiving a time of occurrence of the event recorded independently of the samples; comparing the timestamps and the time of occurrence to identify at least one block corresponding to the event; and processing the data samples of the identified at least one block to derive position information approximating the location of the event.

This invention relates to methods of determining the location of anevent of interest in conjunction with a satellite positioning system,such as GPS. In particular, it relates to providing external satellitepositioning functionality for devices in which the necessary technologyis not (or cannot be) integrated. A camera may be one such device.

The global positioning system is a satellite-based navigation systemconsisting of a network of up to 32 orbiting satellites (called spacevehicles, “SV”) that are in six different orbital planes. 24 satellitesare required by the system design, but more satellites provide improvedcoverage. The satellites are constantly moving, making two completeorbits around the Earth in just under 24 hours.

The GPS signals transmitted by the satellites are of a form commonlyknown as Direct Sequence Spread Spectrum employing a pseudo-random codewhich is repeated continuously in a regular manner. The satellitesbroadcast several signals with different spreading codes including theCoarse/Acquisition or C/A code, which is freely available to the public,and the restricted Precise code, or P-code, usually reserved formilitary applications. The C/A code is a 1,023 bit long pseudo-randomcode broadcast with a chipping rate of 1.023 MHz, repeating everymillisecond. Each satellite sends a distinct C/A code, which allows itto be uniquely identified.

A data message is modulated on top of the C/A code by each satellite andcontains important information such as detailed orbital parameters ofthe transmitting satellite (called ephemeris), information on errors inthe satellite's clock, status of the satellite (healthy or unhealthy),current date, and time. This part of the signal is essential to a GPSreceiver determining an accurate position. Each satellite only transmitsephemeris and detailed clock correction parameters for itself andtherefore an unaided GPS receiver must process the appropriate parts ofthe data message of each satellite it wants to use in a positioncalculation.

The data message also contains the so called almanac, which comprisesless accurate information about all the other satellites and is updatedless frequently. The almanac data allows a GPS receiver to estimatewhere each GPS satellite should be at any time throughout the day sothat the receiver can choose which satellites to search for moreefficiently. Each satellite transmits almanac data showing the orbitalinformation for every satellite in the system.

A conventional GPS receiver reads the transmitted data message and savesthe ephemeris, almanac and other data for continual use. Thisinformation can also be used to set (or correct) the clock within theGPS receiver.

To determine position, a GPS receiver compares the time a signal wastransmitted by a satellite with the time it was received by the GPSreceiver. The time difference tells the GPS receiver how far away thatparticular satellite is. By combining distance measurements frommultiple satellites, position can be obtained by trilateration. With aminimum of three satellites, a GPS receiver can determine alatitude/longitude position (a 2D position fix). With four or moresatellites, a GPS receiver can determine a 3D position which includeslatitude, longitude, and altitude. The information received from thesatellites can also be used to set (or correct) the clock within the GPSreceiver.

By processing the apparent Doppler shifts of the signals from thesatellites, a GPS receiver can also accurately provide speed anddirection of travel (referred to as ‘ground speed’ and ‘ground track’).

Nearly all current GPS receivers work by processing signals from thesatellites in “real time”, as they come in, reporting the position ofthe device at the current time. Such “conventional” GPS receiversinvariably comprise:

an antenna suitable for receiving the GPS signals,

analogue RF circuitry (often called a GPS front end) designed toamplify, filter, and mix down to an intermediate frequency (IF) thedesired signals so they can be passed through an appropriateanalogue-to-digital (A/D) convertor at a sample rate normally of theorder of a few MHz,

digital signal processing hardware that carries out the correlationprocess on the IF data samples generated by the A/D converter, normallycombined with some form of micro controller that carries out the “higherlevel” processing necessary to control the signal processing hardwareand calculate the desired position fixes.

The less well known concept of “Store and Process Later” has also beeninvestigated. This involves storing the IF data samples collected by alo conventional antenna and analogue RF circuitry in some form of memorybefore processing them at some later time (seconds, minutes, hours oreven days) and often at some other location, where processing resourcesare greater.

The key advantages of the Store and Process Later approach overconventional GPS receivers are that the cost and power consumption ofthe capturing device are kept to a minimum as no digital signalprocessing needs be done at the time of capture, and the grabs can bevery short (e.g. 100 ms). If the subsequent signal processing is donewhen the relevant satellite data (ephemeris etc) can be obtained viasome other method, this approach also removes the need to decode the(very slow) data message from the SVs in the capturing device, which inmany cases leads to unacceptably long times to start up conventionaldevices.

The integration of satellite positioning functionality into consumerelectronic devices has long been acknowledged to be desirable. However,due to the cost and complexity of conventional GPS receivers, thisdemand for converged devices has been largely unmet. The Store andProcess Later paradigm promises to reduce the cost and complexity ofintegrating satellite positioning into devices such as digital cameras,but even this presents a cost barrier to consumers, who must upgradeindividual electronic devices to new models.

According to an aspect of the current invention, there is provided amethod of determining a location of an event of interest by processingsignals from a satellite positioning system, the method comprising:receiving recorded blocks of data samples of a satellite broadcast,including blocks recorded at the approximate location of the event ofinterest, each block including one or more timestamps generated within afirst portable device at which the samples were recorded; receiving atime of occurrence of the event recorded independently of the samples;comparing the timestamps and the time of occurrence to identify at leastone block corresponding to the event; and lo processing the data samplesof the identified at least one block to derive position informationapproximating the location of the event.

This method enables an external, low-complexity, portable satellitepositioning receiver, operating in the Store and Process Later regime,to be used together with other standard consumer electronic devices toprovide the same functionality as an integrated GPS receiver.Furthermore, by using separately recorded event-times of interest toguide the subsequent processing of the satellite signal samples, theprocessing burden can be reduced to a minimum. Rather than, for example,generating a full record of the track of the GPS receiver over time, themethod allows processing effort to be concentrated on the points ofinterest. Notably, there is no requirement to capture blocks of data atthe exact time or location of the event of interest. The method willderive position information approximating the location of the event,with a precision related to the temporal and spatial proximity of therecording of the blocks to the event itself. Thus, the nearer therecording of the blocks is to the event, the greater the accuracy of theapproximation. The method is therefore flexible in relation to varyingaccuracy requirements.

Preferably, the time of occurrence of the event is received from asecond portable device.

If the event-time is recorded by a separate portable device (for examplea device associated with the event) then the overall procedure can becompletely automated. Crucially, this is achieved without any interfaceor link between diverse devices and hence is compatible with legacydevices of all kinds.

Advantageously, multiple blocks corresponding to the event areidentified and the step of processing the data samples comprises:deriving at least one position corresponding to each block; andinterpolating among the derived positions to approximate the location ofthe event, based upon the recorded time of occurrence.

Interpolation can improve the accuracy of position estimates. In atypical scenario, there is no possibility to synchronise the grabbing ofblocks of data samples with the event or events of interest. Thus,recorded blocks are unlikely to correspond exactly with the time andposition of an event. Interpolation permits estimates of the position tobe refined based on knowledge of a small number of consecutive grabsrepresenting a local track of discrete positions over time. Conversely,interpolation may allow the frequency or density of grabs to be reducedwithout significantly sacrificing location accuracy.

Also advantageously, the step of processing the data samples comprises:deriving at least one position and at least one velocity correspondingto the at least one identified block; and using the derived position andvelocity to approximate the location of the event, based on the recordedtime of occurrence.

Velocity estimates can provide a further set of constraints to makeinterpolation between a number of discrete positions more accurate.Alternatively, a velocity estimate could be used to project a distancein a given direction of travel, starting from a single positionestimate.

The method may also comprise compensating for an error between therecorded time of occurrence and the timestamps.

Since the event-times and the timestamps are recorded independently,typically based on different clocks, there is a risk of a mutual error,which would lead to a systematic shift in subsequently derived locationestimates along the historical track taken by the first portable device.Compensating for a timing offset can therefore improve the accuracy oflocation.

According to another aspect of the invention, there is provided a methodof determining a location of an event of interest by processing signalsfrom a satellite positioning system, the method comprising: recordingblocks of data samples of a satellite broadcast, including blocksrecorded at the approximate location of the event of interest, eachblock including one or more timestamps; recording a time of occurrenceof the event; and determining the location of capture according to themethod described above.

According to still another aspect of the invention, there is provided anapparatus for determining a location of an event of interest byprocessing signals from a satellite positioning system, the apparatuscomprising: first receiving means, adapted to receive recorded blocks ofdata samples of a satellite broadcast including blocks recorded at theapproximate location of the event of interest, each block including oneor more timestamps generated within a first portable device at which thesamples were recorded; second receiving means, adapted to receive a timeof occurrence of the event recorded independently of the samples; and aprocessor, adapted to compare the timestamps and the time of occurrenceto identify at least one block corresponding to the event and to processthe data samples of the identified at least one block to derive positioninformation approximating the location of the event.

According to still another aspect of the invention, there is provided anapparatus for determining a location of an event of interest byprocessing signals from a satellite positioning system, the apparatuscomprising: a first portable device adapted to record blocks of datasamples of a satellite broadcast, including blocks recorded at theapproximate location of the event of interest, each block including oneor more timestamps generated within the device; and apparatus asdescribed above.

The invention will now be described by way of example with reference tothe accompanying drawings, in which:

FIG. 1 shows a GPS receiver suitable for Store and Process Lateroperation;

FIG. 2 shows a Store and Process Later data recording method;

FIG. 3 shows a system according to an embodiment of the invention; and

FIG. 4 shows a data processing method according to an embodiment of theinvention.

The invention provides a method of processing stored satellitepositioning system data, such as GPS data. This can be used in manyStore and Process Later applications, where it is desirable for thereceiver to have the GPS signal processing capability removed, and forthis to be implemented remotely.

In a typical application, a small capture device which stores short“grabs” of IF data samples into memory can subsequently upload its IFdata grabs to a shared central computer which would not only carry outthe necessary signal processing (correlation etc), but would also haveaccess to a database of recent satellite information (ephemeris etc) bybeing connected to one or more conventional GPS receivers which relayedkey parts of the GPS data message they received to the central computer.

In particular, the invention supports Store and Process applications inwhich it is desired to supplement an existing device having no GPScapability and potentially limited interface capabilities, effectivelyproviding it with GPS, simply by carrying a simple GPS Store and ProcessLater receiver with the existing device, when in use. No interconnectionor prior synchronization between the GPS receiver and the existingdevice is necessary. Indeed, a single GPS receiver may support multipleexisting devices.

A GPS receiver of this type can be realized as a lightweight, convenientand ultra low power GPS logger, in contrast to the bulky, inconvenient,slow and inefficient loggers achievable with conventional GPS solutions.It therefore enables simple, inexpensive geotagging, using devices whichare light yet can last for weeks or months on a single battery charge.

The invention will be described with reference to an embodiment relatingto digital photography. However, as will be apparent to the skilledperson, it is applicable to devices other than cameras.

FIG. 1 is a system diagram of a Store and Process Later GPS accessory80. The signals from the GPS satellites are received by the antenna 10and then put through conventional analogue processing, typicallycomprising a combination of amplification, filtering and down mixing inunit 12 driven by a reference oscillator 14 (normally a temperaturecompensated crystal), followed by A/D conversion in unit 16. This is theconventional radio receiver electronics forming the RF front end.

A controller 18, implemented as discrete logic or a micro processor withassociated firmware, selects portions of the sampled IF data generatedby the RF front end to be stored in the storage device 20, for example aflash RAM, hard disc etc. The manner in which it does this is influencedby settings from is the user (as input by the GUI 22) and the use of atimer 24 which can also be driven by the oscillator 14 as shown.

The timer 24 can be as simple as a counter driven by the oscillator, orit could be a real-time clock (RTC) which keeps date and time even whenthe device is otherwise turned off. It may have a separate oscillator tominimise “off” energy usage.

When activated, the device records short blocks of IF data from the RFfront end (these short blocks are termed “grabs” in the followingdescription) along with an associated timestamp from the timer 24. Thesegrabs may be for example 100 ms long and they could be recorded atregular intervals, for example once every 10 s. The exact values usedcould be varied explicitly or implicitly by the user via the GUI 22. Indifferent applications, different length grabs will be appropriate.Typically, each grab will be shorter than the subframe duration of 6 s,and preferably less than 500 ms.

Preferably, energy consumption in the periods between grabs is minimizedby turning off as many components of the GPS receiver 80 as possible. Aminimal set of components, including the timer 24, remain active, inorder to “wake” the receiver at the time of the next grab. The batterylife of the portable receiver 80 can therefore be extended.

The GUI 22 may vary in complexity in different implementations. Forexample, only minimal functions such as an on/off switch may beprovided, or more complex configuration of the device's captureparameters may be possible. Alternatively, configuration may be providedthrough a user interface on a personal computer to which the device isconnected to upload the recorded data samples.

The logic implemented by the controller is explained with reference toFIG. 2. The “Initialise system” step 30 involves selecting how long eachgrab should be and what the period between grabs is. The GPS IF data ofone grab is stored in step 32, and the timing for the next grab isdetermined in step 34. Periodically, there is a test in step 36 to seeif the user has instructed the data recording to stop or if the time forthe next grab has been reached (step 38). While the time for the nextgrab has not been reached, the system is in a waiting mode, butmonitoring if the recording is stopped. Step 40 monitors if data can bedownloaded, and step 42 relates to the uploading of the recorded grabsto a PC for subsequent processing.

FIG. 3 depicts a system diagram according to one aspect of theinvention. The system includes a portable GPS receiver 80, a camera 84and a personal computer 86.

In use, the portable GPS receiver accessory 80 and camera 84 are carriedtogether by the user. For example, the receiver 80 could be implementedas an armband, wristwatch, key-fob, belt-clip or any other smallform-factor device which is easily carried. As the user moves about, theGPS device 80 records blocks of IF samples, typically intermittently,and stores them in its internal memory, together with local timestamps.This data comprises sufficient information—at least when combined withephemeris data available from the database 82—to potentially generate afull trajectory log of (discrete) positions over time.

Note that there is no guarantee that a given recorded block of sampleswill be viable for deriving a position fix. The Store and ProcessReceiver may fail to “acquire” satellite data signals in exactly thesame way as a conventional (real-time) receiver, when the signalstrength drops too much—the difference being that, due to thedistributed processing of the Store and Process case, this will only bedetermined after the event. As a result, there is an inherent trade-offbetween, on the one hand, capturing a grab long enough to achieve thenecessary robustness and, on the other, minimizing the time, power andstorage overheads in capture.

Independently of the GPS receiver accessory 80, the camera is used tocapture photographs and/or videos, each with an associated time ofcapture. Later, the receiver 80 and camera 84 are connected to apersonal computer 86. For convenience, they may be connected at the sametime, but this is not necessary for the operation of the system.

The personal computer processes the images and recorded IF grabsaccording to the method shown in FIG. 4. At step 50, the recorded grabs,with timestamps, are uploaded from the receiver 80 and at step 52, theimages, with capture times, are uploaded from the camera. Each uploadoperation may utilise any communication link available, including wired,wireless or infrared links.

At step 54 the computer obtains ephemeris data for the GPS satellitesfrom a database 82, such as one accessible over the internet. Theavailability of full ephemeris data from a separate source (other thanthe recorded IF grabs) brings a number of benefits. It can enableposition estimates to be derived from grabs of minimal length, or enablethe computer to do so with minimal processing effort.

The computer then iterates over the uploaded photos, selecting a photoat step 56 and, based on the recorded timestamps of the grabs andcapture-time of the image, identifying at step 58 a small number N ofgrabs closest to the capture-time of the photo.

For each grab, processing at step 60 determines a position estimate.This processing will be well-known to those skilled in the art. Itessentially involves a search of the IF samples for the signals of asmany SVs as possible, followed by estimation of the time of flight ofthose signals and trilateration to derive a position. At this stage, thedownloaded ephemeris data can be used to guide the search. For example,knowing the time of capture of the photograph and the positions overtime of each SV, only certain SVs would be visible to a receiver in agiven position. Thus, once a signal corresponding one of the SVs isfound, a number of other SVs which could not simultaneously be visiblecan be eliminated from the search.

Consecutive grabs may be processed consecutively. This allows the searchto be further constrained, on the basis that consecutive grabs willrepresent nearby positions and times. For example, a SV-signal found inone grab is very likely to be present in the preceding and subsequentgrabs in the sequence—the search can prioritise such SVs.

When the N grabs have been processed to provide N discrete GPS positionestimates, interpolation is performed at step 70, to generate a smoothertrack of position over time. This is then used to more accuratelyapproximate the position corresponding to the capture time of the photo,which will be likely to occur between two successive grabs. Variousappropriate linear and non-linear interpolation methods will be wellknown to those skilled in the art.

The computer then proceeds to select and process the next photo. Again,it may be advantageous to select a photo taken at a time similar to onealready processed. The same benefits described above, in terms ofconstraining the search space, will be available. Alternatively, forexample, the photo may be chosen according to a selection by the user.

In a more advanced embodiment, instead of relying solely on positionestimates, velocity estimates derived from the IF grabs can beincorporated in the location estimation process. It is well known toderive velocity estimates from the apparent Doppler shift of receivedGPS signals and the same algorithms are equally applicable to therecorded IF grabs. The velocity estimates can be used to improve theaccuracy of the interpolation process. In turn, this may enable sparserspacing of grabs, since the resulting increase in uncertainty in theposition estimate can be compensated to some degree by decreaseduncertainty in the velocity.

A further refinement is compensating for errors in recording the grabtimestamps and photo capture times. It is possible to calculate the timeof capture of a given grab very accurately, based on knowledge of thesatellite-clock obtained from the ephemeris—in fact this is a by-productof the process of calculating position estimates for each grab. Atemporal offset can then be computed between the (latterly calculated)actual time of receipt and the timestamp recorded internally by the GPSreceiver at the time of recording. The necessary correction can bedownloaded from the computer to the GPS receiver to improve the accuracyin future.

In general, in order to derive an accurate and unambiguous time from anIF grab it is necessary to obtain enough samples of the data message toestablish which part of the message has been observed. A single 100 msgrab will not fulfill this requirement unless the receiver clock (timer24) is already accurate to better than 10 ms, as only five 20 ms longdata bits may be observed. If the timer 24 is indeed this accurate thenseeing a single bit edge is sufficient to enable derivation of the exacttime; however, RTCs are rarely this accurate in practice.

To avoid this limitation, the receiver can capture a single long grab(7.2 s or more). This length should ensure that enough of the datamessage will be observed to establish the exact point in the datamessage and therefore the apparent error in the RTC. Any other grabstaken in proximity to that grab (before or after) would share a similarerror, since a typical crystal oscillator would take many minutes tolose or gain as much as 10 ms. It is therefore possible to establishaccurate time from these grabs despite them being only 100 ms long. Inturn, this accurate time can be propagated to other short grabs inproximity to the first set. Thus, for example, if recording grabs onceper minute for a period of several hours, only a single 7.2 s grab mightbe necessary to establish accurate time for all of the grabs (although,one per hour might be a wise precaution).

Other approaches to establish accurate time are possible—for example, itis theoretically possible to establish unambiguous synchronisation withthe data message from a large number of short grabs).

Another source of temporal error is the lack of synchronization betweenthe internal clock of the camera and either the receiver clock (timer24) or “true” GPS-time (as computed from the data samples). This type oferror will lead to shifted location estimates, since the incorrectlyrecorded time of capture of a photograph will result in association withthe wrong grabs. However, these errors can also be correcteda-posteriori, at the computer, by comparing the current time reported bythe clock in the GPS receiver 80 with that of the camera's clock, whenboth are connected for upload. Again, if possible, a correction factorcould be automatically downloaded to the camera.

The invention has been described in connection with (single frequency)GPS, but other GNSS systems (GLONASS, Galileo etc) would be similar.Indeed the techniques could also be applied to multiple frequencysystems.

GPS transmits at several different frequencies. At present only a singlefrequency is of interest to civilian users, but plans for otherpublically available frequencies are well advanced and will be coveredby Galileo for example. Store and Process Later receivers can handlethis by:

-   a) Capturing each frequency separately in parallel (using multiple    RF front ends or a single RF front end with multiple parallel signal    paths)-   b) Capturing each frequency separately in serial (needing only a    single front end which can be switched/programmed to move between    the chosen frequencies—for example, with different bandwidths and    filter settings)-   c) Capturing all frequencies together, by using a front-end that    mixes all the frequencies down to generate a single output with the    different frequencies in the same IF signal, offset by much smaller    amounts than when they were transmitted.

GLONASS uses slightly different transmission frequencies for differentsatellites. A Store & Process receiver for GLONASS could be implemented,for example, by capturing the whole bandwidth with a higher samplingrate.

Other possible variations include reordering of the process steps shownin FIG. 2. For example, the step 54 of obtaining ephemeris data from adatabase may be carried out after step 58—that is, after the times ofthe photos and corresponding IF grabs of interest are established. Thiscould enable selective download of the ephemeris data relevant to thetime of capture of the photographs and would be useful when, forexample, the bandwidth of a communication-link to the database islimited.

Similarly, the upload of grabs from the portable GPS receiver 80 (instep 50 of FIG. 2) could be carried out after the upload 52 of thephotos from the camera. The upload of IF grabs could then be selective,such that the computer requests the GPS receiver to upload only thosegrabs recorded in a suitable time-window before and after each photo.This approach would reduce the overhead involved in transferringunnecessarily large numbers of lo data samples between the GPS receiver80 and PC 86.

Just as the process steps may be reordered, similarly, system componentsmay be connected in different topologies. For example, in FIG. 3, thecamera 84 could be connected via the GPS receiver 80 to the personalcomputer 86. In such a “daisy chain” topology, the portable GPS receivermay incorporate additional intelligence, such that it performs the step58 of associating grabs with photos and then delivers these together tothe personal computer, for processing of the data samples to determinelocation.

Various other modifications will be apparent to those skilled in theart.

1. A method of determining a location of an event of interest byprocessing signals from a satellite positioning system, the methodcomprising: receiving recorded blocks of data samples of a satellitebroadcast including blocks recorded at the approximate location of theevent of interest, each block including one or more timestamps generatedwithin a first portable device at which the samples were recorded;receiving a time of occurrence of the event recorded independently ofthe samples; comparing the timestamps and the time of occurrence toidentify at least one block corresponding to the event; and processingthe data samples of the identified at least one block to derive positioninformation approximating the location of the event.
 2. The method ofclaim 1, wherein the time of occurrence of the event is recorded at asecond portable device.
 3. The method of claim 1 or 2, wherein the atleast one identified block comprises a plurality of blocks and the stepof processing the data samples comprises: deriving at least one positioncorresponding to each block; and interpolating among the derivedpositions to approximate the location of the event, based upon therecorded time of occurrence.
 4. The method of any of claims 1 to 3,wherein the step of processing the data samples comprises: deriving atleast one position and at least one velocity corresponding to the atleast one identified block; and using the derived position and velocityto approximate the location of the event, based on the recorded time ofoccurrence.
 5. The method of any preceding claim, further comprisingcompensating for an error between the recorded time of occurrence andthe timestamps.
 6. The method of any of claims 2 to 5, wherein the eventof interest is the capture of an image or a sequence of images and thesecond portable device is a camera.
 7. The method of any precedingclaim, wherein the samples comprise intermediate frequency downconverteddata samples.
 8. A method of determining a location of an event ofinterest by processing signals from a satellite positioning system, themethod comprising: recording blocks of data samples of a satellitebroadcast, including blocks recorded at the approximate location of theevent of interest, each block including one or more timestamps;recording a time of occurrence of the event; and determining thelocation of capture according to the method of claim
 1. 9. A computerprogram comprising computer program code means adapted to perform allthe steps of any of claims 1 to 7 when said program is run on acomputer.
 10. A computer program as claimed in claim 9 embodied on acomputer-readable medium.
 11. Apparatus for determining a location of anevent of interest by processing signals from a satellite positioningsystem, the apparatus comprising: first receiving means, adapted toreceive recorded blocks of data samples of a satellite broadcastincluding blocks recorded at the approximate location of the event ofinterest, each block including one or more timestamps generated within afirst portable device at which the samples were recorded; secondreceiving means, adapted to receive a time of occurrence of the eventrecorded independently of the samples; and a processor, adapted tocompare the timestamps and the time of occurrence to identify at leastone block corresponding to the event and to process the data samples ofthe identified at least one block to derive position informationapproximating the location of the event.
 12. Apparatus for determining alocation of an event of interest by processing signals from a satellitepositioning system, the apparatus comprising: a first portable deviceadapted to record blocks of data samples of a satellite broadcast,including blocks recorded at the approximate location of the event ofinterest, each block including one or more timestamps generated withinthe device; and apparatus according to claim
 11. 13. The apparatus ofclaim 12, further comprising a second portable device for recording thetime of occurrence of the event.
 14. The apparatus of claim 13, whereinthe event of interest is the capture of an image or a sequence of imagesand the second portable device is a camera.